class MyClass(object):
    count = 0

    def __init__(self, x=1):
        self.__x = x

    def __print(self, s):
        print s

    def test(self):
        self.__print("Instance method call")

    @staticmethod
    def stest():
        print "Static Method"

    @property
    def x(self):
        return self.__x

    @x.setter
    def x(self, value):
        self.__x = value

    def __add__(self, o):
        return MyClass(self.x + o.x)

def main():
    o = MyClass(123)
    o.x = 456
    print o.x

    o.test()
    MyClass.stest()

    s = o + MyClass(321)
    print s.x

if __name__ == '__main__':
    main()
